home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-01-30 | 570 b | 23 lines | [TEXT/gamI] |
- ; Fibonacci benchmark
-
- (##declare (standard-bindings) (fixnum)) ; Compiler: generate fast code
-
- (define (fibonacci n)
-
- (define (fib n) (if (< n 2) n (+ (fib (- n 1)) (fib (- n 2)))))
-
- (fib n))
-
- ; In C, this is:
- ;
- ; int fib( n ) int n; { if (n < 2) return n; else return fib(n-1)+fib(n-2); }
-
- ; Timings on Mac+ for (fibonacci 20) in sec:
- ;
- ; secs relative speed
- ; Interpreted code: 17.85 42.50
- ; Compiled code: 0.42 1.00
- ; Think C 4.0: 0.60 1.43
- ;
- ; note: Think C has 16 bit ints, Gambit has 29 bit fixnums
-